SQL语句之DDL语言

您所在的位置:网站首页 create drop alter语句 SQL语句之DDL语言

SQL语句之DDL语言

2023-06-04 10:14| 来源: 网络整理| 查看: 265

说明:DDL(Data Definition Language,数据定义语言),用来定义数据库对象(数据库、表),包括了数据库和表的创建、查询、使用和删除操作。

一、数据库操作

新安装的数据库,默认有以下四个数据库,可输入下面的SQL语句查看

# 查看所有数据库 show databases ;

在这里插入图片描述

创建

创建一个名称为“db_test”的数据库;

create database db_test; 使用

使用db_test数据库,可以理解为切换到某个数据库内;

use db_test; 查询

(1)查询所有的数据库,可以看到我们刚刚新加的数据库;

show databases;

在这里插入图片描述

(2)查询当前的数据库

# 使用db_test数据库 use db_test; select database();

在这里插入图片描述

删除

删除db_test数据库

drop database db_test; show databases;

在这里插入图片描述

值得一提的是,如果创建数据库时数据库已存在,或者删除数据库时数据库不存在,执行SQL语句会失败。可以在创建或删除数据时,增加判断。表示如果数据库不存在,则创建;如果数据库存在,则删除,来避免SQL语句执行失败。

如果数据库不存在,创建数据库

create database if not exists db_test;

如果数据库存在,删除数据库

drop database if exists db_test; 二、表操作 约束

在设计表时,我们常常要用到约束,比如身份证号码唯一、姓名不能为空、默认为0等等;数据库中提供了以下五种约束,可在SQL语句中使用,表明设置该字段为对应的约束;

非空约束(not null):限制该字段不能为null;

唯一约束(unique):保证字段的所有数据都是唯一、不重复的;

主键约束(primary key):主键是一行数据的唯一标识,要求非空且唯一,可用auto_increment,即数字自增;

默认约束(default):保存数据时,如果未指定该字段值,则采用默认值;

外键约束(foreign key):让两张表的数据建立连接,保证数据的一致性和完整性;

创建

创建一个学生表:

学号:主键,字符长度为10;

姓名:非空,字符长度为6;

性别:字符长度为2,默认未知;

手机号:非空、唯一,字符长度为11;

入学日期:可为空,日期类型

use db_test; create table tb_stu( stu_id char(10) primary key comment '学号', name varchar(6) not null comment '姓名', gender char(2) default '未知' comment '性别', phone char(11) not null comment '手机号', join_date date comment '入学日期' ) comment '学生表';

注:comment为注释,加在字段后面为字段的注释,加在表后面为表的注释; 在这里插入图片描述

修改

(1)添加字段:添加年龄(age)、家庭地址(address)字段。修改后,可用SQL语句(desc 表名)查看表结构,看修改是否成功;

alter table tb_stu add age tinyint comment '年龄'; alter table tb_stu add address varchar(50) comment '家庭住址';

在这里插入图片描述

(2)修改字段类型:修改家庭住(address)类型为char(20);

alter table tb_stu modify address char(20) comment '家庭地址';

在这里插入图片描述 (3)修改字段名和字段类型:修改家庭住址(Address)字段名为籍贯,类型改为varchar(10);

alter table tb_stu change address origin varchar(10) comment '籍贯';

在这里插入图片描述

(4)删除字段:删除年龄(age)字段;

alter table tb_stu drop column age;

在这里插入图片描述

(5)修改表名:修改表名(tb_stu)为table_stu;

# 修改表名(tb_stu)为table_stu; rename table tb_stu to table_stu; # 显示当前数据下的所有表; show tables;

在这里插入图片描述

查询

(1)查询当前数据库所有表:先再建一张表(tb_emp),查询当前数据库的所有表;

show tables;

在这里插入图片描述

(2)查询表结构:查看table_stu表的结构;

desc table_stu;

在这里插入图片描述

(3)查询建表语句:查看table_stu表的建表语句;

show create table table_stu;

在这里插入图片描述

删除

删除table_stu表;

drop table table_stu;

在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3